Dru-Go – Telegram
311 subscribers
50 photos
1 video
2 files
101 links
Be careful with what you know. That's where most people's troubles begin.
Download Telegram
Channel created
Task, a task runner and build tool written in Go, is considered a wonderful alternative to the traditional Make command for several reasons.

Task aims to simplify the build process and is designed to be more user-friendly than GNU Make. One key advantage of Task is its simplicity and ease of use compared to Make, making it a popular choice among developers looking for a more straightforward build tool. Task's syntax is based on YAML, which provides a structured approach to defining tasks and commands.

Additionally, Task offers built-in variables that can retrieve information about the operating system and architecture, which can be beneficial for automation tasks.

In contrast, Makefiles can sometimes be challenging due to their unique syntax and limitations. Makefiles are not always easily parseable and may have unexpected syntactic properties. Taskfile, on the other hand, provides a clearer and more explicit structure for defining tasks and commands, making it easier to understand and work with.

Furthermore, Task offers features like built-in shell parsing in Golang and the ability to list available commands easily with a built-in flag.

Task presents itself as a modern alternative to Makefiles, offering simplicity, ease of use, and improved clarity in defining tasks and commands for developers working on automation and build processes.


https://github.com/go-task/task
Forwarded from Dark horse (Fearless Soul🤴👨‍🦽)
You work 8 hours to live 4.
You work 6 days to enjoy 1.
You work 8 hours to eat in 15 minutes.
Work 8 hours of sleep 5
You work all year just to take a week or two vacation.
You work all your life to retire in old age.
And watch only your last breaths.
Eventually, you realize that life is nothing but a parody of yourself practicing your own oblivion.
We have become so accustomed to material and social slavery that we no longer see the chains..
Life is a short trip,
Live it up!
u like the environment management idea, write me a simple scenario for this kind of problem

Sure, here's a simple scenario for the environment management problem:

Suppose you are working on a Go project that requires the use of a specific version of Go. In your development environment, you have Go installed, but the version installed is not the one you need for your project. To solve this problem, you can create a noscript that sets up the environment by downloading and installing the required version of Go.

Here's an example of how you can implement this solution using the os/exec package in Golang:

package main

import (
"fmt"
"os"
"os/exec"
)

func main() {
// Check if the required version of Go is already installed
cmd := exec.Command("go", "version")
out, err := cmd.CombinedOutput()
if err != nil {
fmt.Println("Go version not found. Installing...")

// Download and install the required version of Go
cmd = exec.Command("curl", "-L", "https://dl.google.com/go/go1.19.2.linux-amd64.tar.gz")
err = cmd.Run()
if err != nil {
fmt.Println("Error downloading Go version:", err)
return
}

cmd = exec.Command("tar", "-xzvf", "go1.19.2.linux-amd64.tar.gz")
err = cmd.Run()
if err != nil {
fmt.Println("Error extracting Go version:", err)
return
}

cmd = exec.Command("mv", "go1.19.2", "go")
err = cmd.Run()
if err != nil {
fmt.Println("Error moving Go version:", err)
return
}

fmt.Println("Go version installed successfully!")
} else {
fmt.Println("Go version found.")
}
}
In this noscript, we first check if the required version of Go is already installed by running the "go version" command. If the version is not found, we download and install the required version of Go using "curl" and "tar". Finally, we move the extracted Go version to the "go" directory.

This noscript can be run in your CI/CD pipeline to ensure that the required version of Go is available in the environment before running your Go application.
1💩1