github.com/demisto/mattermost-server@v4.9.0-rc3+incompatible/build/release.mk (about)

     1  
     2  dist: | check-style test package
     3  
     4  build-linux:
     5  	@echo Build Linux amd64
     6  ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64")
     7  	env GOOS=linux GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/platform $(GOFLAGS) $(GO_LINKER_FLAGS) ./
     8  else
     9  	env GOOS=linux GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/linux_amd64/platform $(GOFLAGS) $(GO_LINKER_FLAGS) ./
    10  endif
    11  
    12  build-osx: 
    13  	@echo Build OSX amd64
    14  ifeq ($(BUILDER_GOOS_GOARCH),"darwin_amd64")
    15  	env GOOS=darwin GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/platform $(GOFLAGS) $(GO_LINKER_FLAGS) ./
    16  else
    17  	env GOOS=darwin GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/darwin_amd64/platform $(GOFLAGS) $(GO_LINKER_FLAGS) ./
    18  endif
    19  
    20  build-windows: 
    21  	@echo Build Windows amd64
    22  ifeq ($(BUILDER_GOOS_GOARCH),"windows_amd64")
    23  	env GOOS=windows GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/platform.exe $(GOFLAGS) $(GO_LINKER_FLAGS) ./
    24  else
    25  	env GOOS=windows GOARCH=amd64 $(GO) build -i -o $(GOPATH)/bin/windows_amd64/platform.exe $(GOFLAGS) $(GO_LINKER_FLAGS) ./
    26  endif
    27  
    28  build: build-linux build-windows build-osx
    29  
    30  build-client:
    31  	@echo Building mattermost web app
    32  
    33  	cd $(BUILD_WEBAPP_DIR) && $(MAKE) build
    34  
    35  package:
    36  	@ echo Packaging mattermost
    37  
    38  	@# Remove any old files
    39  	rm -Rf $(DIST_ROOT)
    40  
    41  	@# Create needed directories
    42  	mkdir -p $(DIST_PATH)/bin
    43  	mkdir -p $(DIST_PATH)/logs
    44  
    45  	@# Resource directories
    46  	cp -RL config $(DIST_PATH)
    47  	cp -RL fonts $(DIST_PATH)
    48  	cp -RL templates $(DIST_PATH)
    49  	cp -RL i18n $(DIST_PATH)
    50  
    51  	@# Disable developer settings
    52  	sed -i'' -e 's|"ConsoleLevel": "DEBUG"|"ConsoleLevel": "INFO"|g' $(DIST_PATH)/config/config.json
    53  	sed -i'' -e 's|"SiteURL": "http://localhost:8065"|"SiteURL": ""|g' $(DIST_PATH)/config/config.json
    54  
    55  	@# Reset email sending to original configuration
    56  	sed -i'' -e 's|"SendEmailNotifications": true,|"SendEmailNotifications": false,|g' $(DIST_PATH)/config/config.json
    57  	sed -i'' -e 's|"FeedbackEmail": "test@example.com",|"FeedbackEmail": "",|g' $(DIST_PATH)/config/config.json
    58  	sed -i'' -e 's|"SMTPServer": "dockerhost",|"SMTPServer": "",|g' $(DIST_PATH)/config/config.json
    59  	sed -i'' -e 's|"SMTPPort": "2500",|"SMTPPort": "",|g' $(DIST_PATH)/config/config.json
    60  
    61  	@# Package webapp
    62  	mkdir -p $(DIST_PATH)/client
    63  	cp -RL $(BUILD_WEBAPP_DIR)/dist/* $(DIST_PATH)/client
    64  
    65  	@# Help files
    66  ifeq ($(BUILD_ENTERPRISE_READY),true)
    67  	cp $(BUILD_ENTERPRISE_DIR)/ENTERPRISE-EDITION-LICENSE.txt $(DIST_PATH)
    68  else
    69  	cp build/MIT-COMPILED-LICENSE.md $(DIST_PATH)
    70  endif
    71  	cp NOTICE.txt $(DIST_PATH)
    72  	cp README.md $(DIST_PATH)
    73  
    74  	@# ----- PLATFORM SPECIFIC -----
    75  
    76  	@# Make osx package
    77  	@# Copy binary
    78  ifeq ($(BUILDER_GOOS_GOARCH),"darwin_amd64")
    79  	cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled
    80  else
    81  	cp $(GOPATH)/bin/darwin_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir
    82  endif
    83  	@# Package
    84  	tar -C dist -czf $(DIST_PATH)-$(BUILD_TYPE_NAME)-osx-amd64.tar.gz mattermost
    85  	@# Cleanup
    86  	rm -f $(DIST_PATH)/bin/platform
    87  
    88  	@# Make windows package
    89  	@# Copy binary
    90  ifeq ($(BUILDER_GOOS_GOARCH),"windows_amd64")
    91  	cp $(GOPATH)/bin/platform.exe $(DIST_PATH)/bin # from native bin dir, not cross-compiled
    92  else
    93  	cp $(GOPATH)/bin/windows_amd64/platform.exe $(DIST_PATH)/bin # from cross-compiled bin dir
    94  endif
    95  	@# Package
    96  	cd $(DIST_ROOT) && zip -9 -r -q -l mattermost-$(BUILD_TYPE_NAME)-windows-amd64.zip mattermost && cd ..
    97  	@# Cleanup
    98  	rm -f $(DIST_PATH)/bin/platform.exe
    99  
   100  	@# Make linux package
   101  	@# Copy binary
   102  ifeq ($(BUILDER_GOOS_GOARCH),"linux_amd64")
   103  	cp $(GOPATH)/bin/platform $(DIST_PATH)/bin # from native bin dir, not cross-compiled
   104  else
   105  	cp $(GOPATH)/bin/linux_amd64/platform $(DIST_PATH)/bin # from cross-compiled bin dir
   106  endif
   107  	@# Package
   108  	tar -C dist -czf $(DIST_PATH)-$(BUILD_TYPE_NAME)-linux-amd64.tar.gz mattermost
   109  	@# Don't clean up native package so dev machines will have an unzipped package available
   110  	@#rm -f $(DIST_PATH)/bin/platform